module.exports = app => {
  const mongoose = app.mongoose;
  const Schema = mongoose.Schema;

  const SendmsgSchema = new Schema({
    wxid: { type: String, required: true }, // 发送者的微信ID
    fromWxid: { type: String, required: true }, // 接收者的微信ID
    fromNick: { type: String },
    fromWxnum: { type: String },
    fromSex: { type: String },
    msg: { type: String },
    signature: { type: String }, // 签名（可选）
    msgId: { type: String }, // 消息 ID（可选）
    sendId: { type: String }, // 发送 ID（可选）
    msgtype: { type: String }, // 消息类型（可选）
    tags: [{ type: String }], // 自定义标签分组，可多个
    timestamp: { type: Number, required: true }, // 收到这条消息的13位现行时间戳
    date: { type: Date, default: Date.now }, // 转换后的时间（方便查询）
  });

  // 索引优化
  SendmsgSchema.index({ wxid: 1 });
  SendmsgSchema.index({ fromWxid: 1 });
  SendmsgSchema.index({ timestamp: -1 });
  SendmsgSchema.index({ date: -1 });

  return mongoose.model('Sendmsg', SendmsgSchema, 'sendmsg');
};